function DrawSing (figura,transferencias,Color,Hadib)
% DrawSing
% [RECIBE]
% figura: donde realizar el grafico
% transferencia: transferencia cuyos polos y ceros se grficaran
% Color: Color en el que se realizaran los dibujos


    [~,~,k] = zpkdata(transferencias);
    z=[];
    p=[];
    
    

    for mm =1 : length(k)
        
        
        [zp,pp,~] = zpkdata(transferencias(mm));        
        z=[z (cell2mat(zp))'];
        p=[p (cell2mat(pp))'];
    end
    sing=abs([z p]);
  
    maxmod=max((sing));
    

    
    [~,~,kp] = zpkdata(transferencias);
    
   

     [z,p,~] = zpkdata(Hadib);
     z=(cell2mat(z))';
     p=(cell2mat(p))';
     
    
        
        
    for k=1:length(z)
        z(k)=1j*imag(z(k));
        
    end
    

     
     
     
     sing=[z p];

    for j=1 : length(p)
        plot(figura,real(p(j)),imag(p(j)),'x','LineWidth',2,'MarkerSize',10,'Color',Color);
        plot(figura,[0,real(p(j))*1.1],[0,imag(p(j)*1.1)],'-.r','Color',Color);
    end

    for j=1 : length(z)
        plot(figura,real(z(j)),imag(z(j)),'o','LineWidth',2,'MarkerSize',10,'Color',Color);
        plot(figura,[0,real(z(j))*1.1],[0,imag(z(j))*1.1],'-.r','Color',Color);
    end

    plot(figura,[-maxmod*1.2 1],[0 0]);
    plot(figura,[0 0],[-maxmod*2 maxmod*2]);

    for j=1 : length(sing)
        circle(0,0,abs(sing(j)),figura,Color);
    end
    set(figura,'XLim',[-maxmod*1.1 maxmod*0.1]);

    set(figura,'YLim',[-maxmod*1.4 maxmod*1.4]);
    
end

function circle(x,y,radio,figura,Color)
% circle
% [RECIBE]
% x: posicion x del centro del circulo
% y posicion y del centro del circulo
% radio: radio del circulo
% figura: figura en la cual se dibujara el circulo
% Color: Color en el cual se dibujara el circulo
    ang=(pi/2):0.01:3*pi/2;
    xp=radio*cos(ang);
    yp=radio*sin(ang);
    plot(figura,0+xp,0+yp,'-.r','Color',Color);

end